#pragma once

#include <kuadu.h>

class Sandbox2D : public KD::Layer
{
public:
	Sandbox2D();
	virtual ~Sandbox2D() = default;

	virtual void OnAttach() override;
	virtual void OnDetach() override;

	void OnUpdate(KD::TimeStep ts) override;

	virtual void OnImGuiRender() override;

	void OnEvent(KD::Event& e) override;
private:
	KD::OrthographicCameraController m_CameraController;
	glm::vec4 m_Color = { 0.2f, 0.3f, 0.8f, 0.5f };
	KD::Ref<KD::Texture2D> m_Texture;

	struct ProfileResult
	{
		const char* Name;
		float Time;
	};

	std::vector<ProfileResult> m_ProfileResults;
};
